package com.zsqat.eshop.product.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import lombok.Data;

/**
 * 属性分组
 *
 * @author zsqat
 * @email 491192853@qq.com
 * @date 2020-11-19 16:40:59
 */
@Data
@TableName("pms_attr_group" )
public class AttrGroupEntity implements Serializable {
  private static final long serialVersionUID = 1L;

  /**
   * 分组id
   */
  @TableId
  private Long attrGroupId;
  /**
   * 组名
   */
  private String attrGroupName;
  /**
   * 排序
   */
  private Integer sort;
  /**
   * 描述
   */
  private String descript;
  /**
   * 组图标
   */
  private String icon;
  /**
   * 所属分类id
   */
  private Long categoryId;

  // 级联菜单的路径，也就是三级分类的完整路径
  @TableField(exist = false)
  private Long[] categoryPath;
}

/*
  属性分组, 对应于"pms_attr_group"表, 每个分组下, 需要查看到关联了哪些属性信息,销售属性不需要和分组进行关联,但是规格参数要和属性分组进行关联。

  规格参数: 对应于pms_attr表, attr_type=1, 需要显示分组信息

  销售属性: 对应于pms_attr表, attr_type=0, 不需要显示分组信息


  本分类下, 存在哪些基本属性?
    1. 没有关联的其他属性
    2. 已经关联的属性,这些属性是如何关联上的?
       答:在创建规格参数的时候,已经设置了需要关联那些属性分组。

  想要知道还有哪些属性没有关联？
    1. 在中间表中显示了属性和属性分组之间的关联关系，在属性表中显示了所有的属性，
    2. 先查询中间表，得到所有已经关联的属性的ID，然后再次查询属性表，排除掉已经建立关联的属性ID，将剩下的属性ID和属性建立起关联关系。
*/
